#include <stdio.h>
#include <stdlib.h>

//哈夫曼树：带权路径长度最小的二叉树（也叫最优二叉树）
/*
结点的权：有某种现实含义的数值
结点的带权路径长度：从树的根结点到该结点的路径长度与该结点上权值的乘积
树的带权路径长度：树中所有叶子结点的带权路径长度之和


哈夫曼树的构造：
给定n个权值分别为W1, W2... wn,的结点，构造哈夫曼树的算法描述如下:
1)将这n个结点分别作为n棵仅含-一个结点的二叉树，构成森林F。
2)构造一个新结点，从F中选取两棵根结点权值最小的树作为新结点的左、右子树，并且将新
结点的权值置为左、右子树上根结点的权值之和。.
3)从F中删除刚才选出的两棵树，同时将新得到的树加入F中。
4)重复步骤2)和3)，直至F中只剩下一-棵树为止。


哈夫曼编码：
左0右1

*/

int main()
{
    printf("\n\n========================================================================\n\n");






    printf("\n\n========================================================================\n\n");
    return 0;
}